DS18B20测量温度

准备

硬件:

  • FireBeetle-ESP32 × 1
  • DS18B20数字温度传感器 (点击查看模块详情)

    点击购买

软件:

  • uPyCraft IDE

代码位置:

  • File → Examples → Measure → ds18b20Demo.py
  • 引用模块:uPy_lib → ds18x20.py

实验步骤

1. 硬件连接如下图

2. 下载运行 ds18b20Demo.py 文件,具体代码如下

#硬件平台:FireBeetle-ESP32
#实验效果:这个实验用来测量环境温度。
#硬件连接:本实验需要在IO25外接一个'DS18B20'数字温度传感器。
#下面的信息显示,对于当前版本,ds18b20Demo是可用的。
# IO0  IO2  IO4  IO5  IO9  IO10 IO12~19 
# IO21 IO22 IO23 IO25 IO26 IO27 

from machine import Pin
import onewire
import ds18x20
import time

ow = onewire.OneWire(Pin(25))   #创建单总线对象
ds = ds18x20.DS18X20(ow)        #创建ds18b20对象
while True:
  roms=ds.scan()                #扫描ds18b20地址
  ds.convert_temp()             #温度转换
  for rom in roms:
    print(ds.read_temp(rom))    #温度显示
  time.sleep(1)

实验效果

ds18x20.py库API说明

类 — DS18X20

  • class DS18X20(object)

类函数

  • read_temp(rom=None) 函数功能:读取指定ds18x20设备的温度。
  • read_temps() 函数功能:读取所有设备的温度。
  • convert_temp() 函数功能:将原始数据转换成温度。

results matching ""

    No results matching ""